package be.dch.typeditor.domain;

/**
 * Description of a TypeFile
 * 
 * @author EH053
 * 
 */
public class Typ {

    private String fid;
    private String product;
    private String codePage;
    private DrawOrderItem[] draworder;
    private GarminIcon[] pois;
    private GarminIcon[] polyglons;
    private GarminIcon[] polylines;

    /**
     * @return the fid
     */
    public String getFid() {
	return this.fid;
    }

    /**
     * @param fid
     *            the fid to set
     */
    public void setFid(final String fid) {
	this.fid = fid;
    }

    /**
     * @return the product
     */
    public String getProduct() {
	return this.product;
    }

    /**
     * @param product
     *            the product to set
     */
    public void setProduct(final String product) {
	this.product = product;
    }

    /**
     * @return the codePage
     */
    public String getCodePage() {
	return this.codePage;
    }

    /**
     * @param codePage
     *            the codePage to set
     */
    public void setCodePage(final String codePage) {
	this.codePage = codePage;
    }

    /**
     * @return the draworder
     */
    public DrawOrderItem[] getDraworder() {
	final DrawOrderItem[] copy = new DrawOrderItem[this.draworder.length];
	System.arraycopy(this.draworder, 0, copy, 0, this.draworder.length);
	return copy;
    }

    /**
     * @param draworder
     *            the draworder to set
     */
    public void setDraworder(final DrawOrderItem[] draworder) {
	final DrawOrderItem[] copy = new DrawOrderItem[draworder.length];
	System.arraycopy(draworder, 0, copy, 0, draworder.length);
	this.draworder = copy;
    }

    /**
     * @return the pois
     */
    public GarminIcon[] getPois() {
	final GarminIcon[] copy = new GarminIcon[this.pois.length];
	System.arraycopy(this.pois, 0, copy, 0, this.pois.length);
	return copy;
    }

    /**
     * @param pois
     *            the pois to set
     */
    public void setPois(final GarminIcon[] pois) {
	final GarminIcon[] copy = new GarminIcon[pois.length];
	System.arraycopy(pois, 0, copy, 0, pois.length);
	this.pois = copy;
    }

    /**
     * @return the polyglons
     */
    public GarminIcon[] getPolyglons() {
	final GarminIcon[] copy = new GarminIcon[this.polyglons.length];
	System.arraycopy(this.polyglons, 0, copy, 0, this.polyglons.length);
	return copy;
    }

    /**
     * @param polyglons
     *            the polyglons to set
     */
    public void setPolyglons(final GarminIcon[] polyglons) {
	final GarminIcon[] copy = new GarminIcon[this.pois.length];
	System.arraycopy(this.pois, 0, copy, 0, this.pois.length);

	this.polyglons = copy;
    }

    /**
     * @return the polylines
     */
    public GarminIcon[] getPolylines() {
	final GarminIcon[] copy = new GarminIcon[this.polylines.length];
	System.arraycopy(this.polylines, 0, copy, 0, this.polylines.length);
	return copy;
    }

    /**
     * @param polylines
     *            the polylines to set
     */
    public void setPolylines(final GarminIcon[] polylines) {

	final GarminIcon[] copy = new GarminIcon[this.pois.length];
	System.arraycopy(this.pois, 0, copy, 0, this.pois.length);
	this.polylines = copy;
    }

}
